import type { Model } from '~/api/base/base-model.ts'

/**
 * 用户信息
 */
export interface UserInfoResp extends Model {
  id?: string
  systemId?: string
  iconFileUrl?: string
  username?: string
  icon?: string
  email?: string
  realName?: string
  nickName?: string
  homeRoleId?: string
  note?: string
  extAttribute?: string
  homePath?: string
  roleIds?: string[]
  deptIds?: string[]
  permissionIds?: string[]
  componentPermissions?: ComponentPermission[]
}

/**
 * 组件权限
 */
export interface ComponentPermission {
  menuId?: string
  routerPath?: string
  components?: MenuComponent[]
  componentCodes?: string[]
}

/**
 * 菜单控件
 */
export interface MenuComponent {
  menuId?: string
  componentTitle?: string
  componentCode?: string
}
